#include <io_ports.h>
/* opt_clocksource: Force clocksource to one of: pit, hpet, cyclone, acpi. */
-static char opt_clocksource[10];
+static char __initdata opt_clocksource[10];
string_param("clocksource", opt_clocksource);
int opt_softtsc;
return count32;
}
-static int init_pit(struct platform_timesource *pts)
+static int __init init_pit(struct platform_timesource *pts)
{
using_pit = 1;
return 1;
}
-static struct platform_timesource plt_pit =
+static struct platform_timesource __initdata plt_pit =
{
.id = "pit",
.name = "PIT",
return hpet_read32(HPET_COUNTER);
}
-static int init_hpet(struct platform_timesource *pts)
+static int __init init_hpet(struct platform_timesource *pts)
{
u64 hpet_rate = hpet_setup();
pts->frequency = hpet_rate;
}
-static struct platform_timesource plt_hpet =
+static struct platform_timesource __initdata plt_hpet =
{
.id = "hpet",
.name = "HPET",
return *cyclone_timer;
}
-static volatile u32 *map_cyclone_reg(unsigned long regaddr)
+static volatile u32 *__init map_cyclone_reg(unsigned long regaddr)
{
unsigned long pageaddr = regaddr & PAGE_MASK;
unsigned long offset = regaddr & ~PAGE_MASK;
return (volatile u32 *)(fix_to_virt(FIX_CYCLONE_TIMER) + offset);
}
-static int init_cyclone(struct platform_timesource *pts)
+static int __init init_cyclone(struct platform_timesource *pts)
{
u32 base;
return 1;
}
-static struct platform_timesource plt_cyclone =
+static struct platform_timesource __initdata plt_cyclone =
{
.id = "cyclone",
.name = "IBM Cyclone",
return inl(pmtmr_ioport);
}
-static int init_pmtimer(struct platform_timesource *pts)
+static int __init init_pmtimer(struct platform_timesource *pts)
{
if ( pmtmr_ioport == 0 )
return 0;
return 1;
}
-static struct platform_timesource plt_pmtimer =
+static struct platform_timesource __initdata plt_pmtimer =
{
.id = "acpi",
.name = "ACPI PM Timer",
plt_stamp = plt_src.read_counter();
}
-static void init_platform_timer(void)
+static void __init init_platform_timer(void)
{
- static struct platform_timesource * const plt_timers[] = {
+ static struct platform_timesource * __initdata plt_timers[] = {
&plt_cyclone, &plt_hpet, &plt_pmtimer, &plt_pit
};